#!/data/data/com.termux/files/usr/bin/bash



# 定义颜色代码
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
BLUE='\033[0;34m'
MAGENTA='\033[0;35m'
CYAN='\033[0;36m'
NC='\033[0m' # 无色，用于重置颜色


echo 非常不错，让我们来启动脚本吧。版本 v1.0
sleep 3
# 显示彩色文字
echo -e "${RED}脚本作者:sw${NC}"
sleep 2
echo -e "${BLUE}请勿白嫖${NC}"
sleep 3
echo -e ""${MAGENTA}B站账号"JIIL来了"${NC}""
sleep 3
echo -e "${GREEN}安装程序将在10秒后启动${NC}"
echo "马上进行安装,安装过程中遇到错,请自己稍微查一下.不要什么问题都问"
sleep 3
echo 建议加入交流群750395354哦。
sleep 10
echo 正在更新..
sleep 1
apt update
pkg update
echo 更新完成,准备安装桌面..
apt install x11-repo
pkg install dialog
sleep 5
echo 即将安装桌面,时间较长，请准备好你的网络环境。
sleep 1
echo 4
sleep 1
echo 3
sleep 1
echo 2
sleep 1
echo 1 
apt install xfce4
echo 桌面安装完成..将在十秒后部署远程环境和一键启动文件
sleep 10
apt install xorg-xhost
apt install mousepad
sleep 2
echo "马上部署一键启动文件 ，部署完成后 ，以后启动时只需要输入 ./start就可以一键启动所有服务"
sleep 2
cat > /data/data/com.termux/files/usr/bin/start <<'EOF'
#!/bin/bash
echo 感谢你使用 JIIL 的脚本 
sleep 将会在五秒后自动启动 
sleep 1
echo 请你放心 脚本没有任何害处 如果你担心脚本会用root权限破坏你的系统 ，你可以不使用root运行 
sleep 6
# 指定文件和目录路径
file_path="/data/data/com.termux/files/usr/tmp/.X1-lock"
dir_path="/data/data/com.termux/files/usr/tmp/.X11-unix"
echo 正在删除文件 此文件为无用文件 无需担心 

if [ -f "$file_path" ]; then
    echo "文件 .X1-lock 存在，正在删除..."
        rm -f "$file_path"  
        fi

        # 检查目录是否存在，并删除
        if [ -d "$dir_path" ]; then
            echo "目录 .X11-unix 存在，正在删除..."
                rm -r "$dir_path"
                fi
                echo "启动网站服务 如果你没有安装nginx 可以输入 apt install nginx"
                sleep 3
                nginx


                sleep 3
                echo 启动桌面环境 
                vncserver :1 -localhost no -geometry 1280x720
                wait
                export DISPLAY=:1
                xhost +
                sleep 1
                startxfce4
                echo 启动完成 
                EOF
                chmod +x /data/data/com.termux/files/usr/bin/start
                echo 部署完成 脚本已启用 
                sleep 5
                echo -e "\n是否要为桌面安装浏览器？按y继续按n不安装。"
                read -n 1 -s -r -p "按 'y' 或回车继续，按 'n' 或 ESC 键跳过: " response
                echo
                case $response in
                    [Yy]* | "")
                            echo "开始安装浏览器..."
                                    apt install firefox
                                            ;;
                                                [Nn]* | $'\x1b')
                                                        echo "跳过浏览器安装..."
                                                                ;;
                                                                    *)
                                                                            echo "无效输入，跳过浏览器安装..."
                                                                                    ;;
                                                                                    esac
                                                                                    echo 脚本写入完成..开始安装vnc,当启动VnC时，请到vnc 客户端连接vnc后输入./start
                                                                                    sleep 2
                                                                                    apt install tigervnc
                                                                                    sleep 2
                                                                                    echo "服务端安装完成,等下的命令执行后会要求您输入密码。请输入两遍你的密码。输入密码框会显示password，输入时不会显示。输入完成后会问你一个问题。你要输入n,不要傻到连问题长啥样都不知道 ，等到脚本运行完成时，你就需要到VnC客户端进行连接。如果遇到错误就输入start,还遇到错误就去提问。进入服务端输入。127.0.0.1:5901连接好后就大功告成了。以后每次启动时，只要输入./start桌面就会自动启动。我会给你50秒时间阅读。"
                                                                                    sleep 50
                                                                                    vncserver :1 localhost no
                                                                                    export DISPLAY=:1
                                                                                    startxfce4
                                                                                    sleep 2
                                                                                    echo 恭喜你完成了所有的安装。
                                                                                    sleep 5
                                                                                    echo -e "\n是否要安装nginx？nginx安装完后就部署好了网站 ，按y继续按n不安装。"
                                                                                    read -n 1 -s -r -p "按 'y' 或回车继续，按 'n' 或 ESC 键跳过: " response
                                                                                    echo
                                                                                    case $response in
                                                                                        [Yy]* | "")
                                                                                                echo "开始安装nginx..."
                                                                                                        apt install nginx
                                                                                                                ;;
                                                                                                                    [Nn]* | $'\x1b')
                                                                                                                            echo "跳过安装..."
                                                                                                                                    ;;
                                                                                                                                        *)
                                                                                                                                                echo "无效输入，跳过安装..."
                                                                                                                                                        ;;
                                                                                                                                                        esac
                                                                                                                                                        # 定义默认端口
                                                                                                                                                        DEFAULT_PORT=8080

                                                                                                                                                        # 等待1秒后显示问题描述
                                                                                                                                                        echo -n "网站端口指的是IP地址后面的那四个数字，默认端口为8080。"
                                                                                                                                                        sleep 1
                                                                                                                                                        echo "当然，你也可以自定义。"
                                                                                                                                                        echo "你需要自定义你的网站端口吗？按y继续按n不做任何改变。"
                                                                                                                                                        # 检测用户输入
                                                                                                                                                        read -n 1 -s -r -p "按 'y' 或回车继续自定义，按 'n' 或 ESC 键不做任何改变: " response
                                                                                                                                                        echo

                                                                                                                                                        # 根据用户输入处理
                                                                                                                                                        case $response in
                                                                                                                                                            [Yy]* | "")
                                                                                                                                                                    # 用户选择自定义端口
                                                                                                                                                                            while true; do
                                                                                                                                                                                        echo "你想要设定几端口？端口为四个数字，推荐在6000到9000之间。端口设置可能会出现错误 "
                                                                                                                                                                                                    read -p "输入端口: " custom_port

                                                                                                                                                                                                                # 检测输入是否是四个数字
                                                                                                                                                                                                                            if [[ $custom_port =~ ^[0-9]{4}$ ]]; then
                                                                                                                                                                                                                                            # 检查端口是否在推荐范围内
                                                                                                                                                                                                                                                            if (( custom_port >= 6000 && custom_port <= 9000 )); then
                                                                                                                                                                                                                                                                                echo "端口设置成功，将使用端口: $custom_port"

                                                                                                                                                                                                                                                                                # 使用sed命令替换Nginx配置文件中的端口
                                                                                                                                                                                                                                                                                sed -i "s/listen [0-9]\+\;/listen ${custom_port};/" /data/data/com.termux/files/usr/etc/nginx/nginx.conf                    break
                                                                                                                                                                                                                                                                                                else
                                                                                                                                                                                                                                                                                                                    echo "端口不在推荐的范围内，请重新输入。"
                                                                                                                                                                                                                                                                                                                                    fi
                                                                                                                                                                                                                                                                                                                                                else
                                                                                                                                                                                                                                                                                                                                                                echo "无效的端口输入，请输入四个数字。"
                                                                                                                                                                                                                                                                                                                                                                            fi
                                                                                                                                                                                                                                                                                                                                                                                    done
                                                                                                                                                                                                                                                                                                                                                                                            ;;
                                                                                                                                                                                                                                                                                                                                                                                                [Nn]* | $'\x1b')
                                                                                                                                                                                                                                                                                                                                                                                                        # 用户选择不自定义端口
                                                                                                                                                                                                                                                                                                                                                                                                                echo "将使用默认端口：$DEFAULT_PORT"
                                                                                                                                                                                                                                                                                                                                                                                                                        ;;
                                                                                                                                                                                                                                                                                                                                                                                                                            *)
                                                                                                                                                                                                                                                                                                                                                                                                                                    echo "无效输入，将使用默认端口：$DEFAULT_PORT"
                                                                                                                                                                                                                                                                                                                                                                                                                                            ;;
                                                                                                                                                                                                                                                                                                                                                                                                                                            esac
                                                                                                                                                                                                                                                                                                                                                                                                                                            sleep 3

                                                                                                                                                                                                                                                                                                                                                                                                                                            echo -e "\n是否要为网站服务安装JIIL推荐的基础模板？按y继续按n不安装。"
                                                                                                                                                                                                                                                                                                                                                                                                                                            echo -e "\n默认使用的网站非常简陋 ，是否使用 推荐的个人网站模板 ？"
                                                                                                                                                                                                                                                                                                                                                                                                                                            read -n 1 -s -r -p "按 'y' 或回车继续，按 'n' 或 ESC 键跳过: " response
                                                                                                                                                                                                                                                                                                                                                                                                                                            echo

                                                                                                                                                                                                                                                                                                                                                                                                                                            case $response in
                                                                                                                                                                                                                                                                                                                                                                                                                                                [Yy]* | "")
                                                                                                                                                                                                                                                                                                                                                                                                                                                        echo "开始..."
                                                                                                                                                                                                                                                                                                                                                                                                                                                                # 目标文件的路径
                                                                                                                                                                                                                                                                                                                                                                                                                                                                target_file="/data/data/com.termux/files/usr/share/nginx/html/index.html"

# 检查目标文件是否存在
if [ ! -f "$target_file" ]; then
    # 如果文件不存在，创建新文件
        echo "文件不存在，正在创建新文件..."
            touch "$target_file"
            else
                # 如果文件存在，清空文件内容
                    echo "文件存在，正在清空文件内容..."
                        > "$target_file"
                        fi
                        # 使用here document定义变量
                        html_content=$(cat <<EOF
                        <!DOCTYPE html>
                        <html lang="zh-CN">
                        <head>
                            <meta charset="UTF-8">
                                <meta name="viewport" content="width=device-width, initial-scale=1">
                                    <title>我的个人博客</title>
                                        <style>
                                                body {
                                                                font-family: 'Arial', sans-serif;
                                                                            line-height: 1.6;
                                                                                        color: #333;
                                                                                                    background-color: #f4f4f4;
                                                                                                                margin: 0;
                                                                                                                            padding: 0;
                                                }
                                                        header {
                                                                        background-color: #333;
                                                                                    color: #fff;
                                                                                                padding: 10px 20px;
                                                                                                            text-align: center;
                                                        }
                                                                header h1 {
                                                                                margin: 0;
                                                                }
                                                                        main {
                                                                                        max-width: 960px;
                                                                                                    margin: 20px auto;
                                                                                                                padding: 20px;
                                                                                                                            background-color: #fff;
                                                                                                                                        box-shadow: 0 0 10px rgba(0,0,0,0.1);
                                                                        }
                                                                                article {
                                                                                                margin-bottom: 20px;
                                                                                                            border-bottom: 1px solid #ddd;
                                                                                                                        padding-bottom: 10px;
                                                                                }
                                                                                        article h2 {
                                                                                                        margin-top: 0;
                                                                                        }
                                                                                                article time {
                                                                                                                color: #888;
                                                                                                }
                                                                                                        footer {
                                                                                                                        text-align: center;
                                                                                                                                    padding: 10px 20px;
                                                                                                                                                background-color: #333;
                                                                                                                                                            color: #fff;
                                                                                                        }
                                                                                                            </style>
                                                                                                            </head>
                                                                                                            <body>
                                                                                                                <header>
                                                                                                                        <h1>欢迎来到我的博客</h1>
                                                                                                                            </header>
                                                                                                                                <main>
                                                                                                                                        <!-- 博客文章 -->
                                                                                                                                                <article>
                                                                                                                                                            <h2>我的第一篇博客文章</h2>
                                                                                                                                                                        <time datetime="2023-07-25">2023-07-25</time>
                                                                                                                                                                                    <p>这是我的第一篇博客文章内容。在这里，我将分享我的想法、经验以及一些有趣的故事。</p>
                                                                                                                                                                                            </article>
                                                                                                                                                                                                    <!-- 添加更多文章 -->
                                                                                                                                                                                                            <!-- ... -->
                                                                                                                                                                                                                </main>
                                                                                                                                                                                                                    <footer>
                                                                                                                                                                                                                            <p>&copy; 2023 由我创建</p>
                                                                                                                                                                                                                                </footer>
                                                                                                                                                                                                                                </body>
                                                                                                                                                                                                                                </html>
                                                                                                                                                                                                                                EOF
                        )
                                                                                                        }
                                                                                                        # 将变量内容写入文件，覆盖原有内容
                                                                                                        echo "$html_content" > /data/data/com.termux/files/usr/share/nginx/html/index.html

                                                                                                        echo "文件内容更新完成。"
                                                                                                                ;;
                                                                                                                    [Nn]* | $'\x1b')
                                                                                                                            echo "跳过装..."
                                                                                                                                    ;;
                                                                                                                                        *)
                                                                                                                                                echo "无效输入，跳过..."
                                                                                                                                                        ;;
                                                                                                                                                        esac
                                                                                                                                                        echo 如果有需要更新的地方 我们还会继续更新这个脚本 
                                                                                                                                                        echo 支持支持我们吧,给我们两个硬币。



                                                                                                                                                        
                                                                                                }
                                                                                        }
                                                                                }
                                                                        }
                                                                }
                                                        }
                                                })